/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.tarifador.controller;

import br.com.tarifador.dao.TarifadorDao;
import br.com.tarifador.model.Tronco;
import java.util.List;

/**
 *
 * @author charles
 */
public class TroncoRN {

    private TarifadorDao<Tronco> dao;
    private Tronco tronco = new Tronco();
    private String messagemCount;

    public boolean salvaTronco() {
        dao = new TarifadorDao<Tronco>(Tronco.class);
        boolean valida = false;
        if (tronco != null) {
            valida = dao.save(tronco);
            countTronco();
        }
        return valida;
    }

    public boolean updateTronco(Tronco idTronco) {
        dao = new TarifadorDao<Tronco>(Tronco.class);
        boolean valida = false;
        if (tronco != null) {
            tronco.setId(idTronco.getId());
            valida = dao.update(tronco);
        }
        return valida;
    }

    public void limparCampos() {
        this.tronco.setDescricao("");
        this.tronco.setNumero(null);
    }

    public String countTronco() {
        dao = new TarifadorDao<Tronco>(Tronco.class);
        Long valor = dao.countAllObject();
        return this.messagemCount = valor.toString() + " troncos cadastrados.";
    }

    public boolean deletaTronco(Long idTronco) {
        dao = new TarifadorDao<Tronco>(Tronco.class);
        boolean valida = false;
        if (idTronco != null) {
            tronco.setId(idTronco);
            valida = dao.delete(tronco);
            countTronco();
        }
        return valida;
    }

    public List<Tronco> listaDeTroncos() {
        dao = new TarifadorDao<Tronco>(Tronco.class);
        List<Tronco> lista = dao.listall();
        return lista;
    }

    public String sobreTronco() {
        String texto = "O cadastro de linha permite atribuir operadoras específicas para cada tronco";
        return texto;
    }

    public String getMessagemCount() {
        return messagemCount;
    }

    public void setMessagemCount(String messagemCount) {
        this.messagemCount = messagemCount;
    }

    public Tronco getTronco() {
        return tronco;
    }

    public void setTronco(Tronco tronco) {
        this.tronco = tronco;
    }
}
